High control authority variable speed control moment gyroscopes

ABSTRACT

A variable speed control moment gyroscope (VSCMG) having a desired offset between the center of mass of the gimbal frame and the center of mass of the flywheel. This gives the VSCMG a higher control authority than an otherwise identical VSCMG without the desired offset at identical gimbal and flywheel rotation rates. Thus the VSCMG generates more angular momentum and torque than an otherwise identical VSCMG without the desired offset at identical gimbal and flywheel rotation rates and per the same unit power consumption. The VSCMG can be operated without any control singularities in a map between the gimbal rate and/or the flywheel rate and the angular momentum or torque produced by the VSCMG. The desired offset is typically at least an order of magnitude greater than an offset between the center of mass of the gimbal frame and the center of mass of the flywheel occurring during manufacture of the VSCMG due to manufacturing tolerances.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to and the benefit of filing of the following U.S. Provisional Patent Applications: Ser. No. 61/931,423, entitled “High Control Authority Variable Speed Control Moment Gyroscope”, filed on Jan. 24, 2014, Ser. No. 61/932,675, entitled “High Control Authority Variable Speed Control Moment Gyroscope”, filed on Jan. 28, 2014, and Ser. No. 62/024,351, entitled “High Control Authority Variable Speed Control Moment Gyroscope”, filed on Jul. 14, 2014, and the specifications and claims of those applications are incorporated herein by reference.

BACKGROUND OF THE INVENTION

Field of the Invention (Technical Field):

The attitude dynamics of a spacecraft with an actuated variable speed control moment gyroscope (VSCMG), is derived using the principles of variational mechanics. The model of the VSCMG preferably comprises an offset between the gimbal frame's center of mass and the flywheel or rotor's center of mass. The dynamics equations show the complex nonlinear coupling between the internal degrees of freedom associated with the VSCMG and the spacecraft base body's attitude degrees of freedom. This dynamics model is then further generalized to include the effects of multiple VSCMGs placed in the spacecraft base body, and sufficient conditions for non- singular VSCMG configurations are obtained. A control scheme using a finite number of VSCMGs for attitude stabilization maneuvers in the absence of external torques and when the total angular momentum of the spacecraft is zero is presented. Embodiments of the present VSCMGs optionally utilize inertia variations of the gimbal on which the flywheel is mounted. These gyroscopes can be used for attitude actuation in space vehicles, including small spacecraft, for precise pointing control, re-orientation, and detumbling maneuvers. It can be used in both government agency-sponsored missions (for example for NASA, ESA, JAXA, ISRO, etc.) and the commercial space industry. Because of the optimization of control authority with respect to the same control inputs, embodiments of the present invention can be used for automobiles, robotics, health care (balance assistance), in addition to attitude control for spacecraft, astronauts (such as those on a spacewalk), and maritime vehicles.

Background Art:

Note that the following discussion may refer to a number of publications and references. Discussion of such publications herein is given for more complete background of the scientific principles and is not to be construed as an admission that such publications are prior art for patentability determination purposes.

Internal momentum exchange devices can be used as spacecraft attitude actuators to stabilize a desired attitude or track a desired attitude profile. A Control Moment Gyroscope (CMG) is a momentum exchange device consisting of a rotor running at a constant angular speed, mounted on a gimbal frame structure that can be rotated at a controlled rate. CMGs are used to generate the required momentum for attitude (orientation) control of spacecraft, including attitude stabilization of agile spacecraft. They can be categorized as Single Gimbal Control Moment Gyroscopes (SGCMGs) or Double Gimbal Control Moment

Gyroscopes (DGCMGs). A Variable Speed Control Moment Gyroscope (VSCMG) combines the features of a constant speed SGCMG with a rotor whose angular speed can be varied. Defining features and comparisons between SGCMGs and DGCMGs are given in Wie, B., 2008, Space Vehicle Dynamics and Control, 2nd ed. American Institute of Aeronautics and Astronautics, Reston, Va. VSCMGs are described in Schaub, H., and Junkins, J. L., 2009. Analytical Mechanics of Space Systems, 2nd ed. AIAA Education Series, Reston, Va., October; McMahon, J., and Schaub, H., 2009. “Simplified singularity avoidance using variable speed control moment gyroscope nullmotion”. AIAA Journal of Guidance, Control, and Dynamics, 32(6), Nov.-Dec., pp. 1938-1943; and Yoon, H., and Tsiotras, P., 2002. “Spacecraft adaptive attitude and power tracking with variable speed control moment gyroscopes”. AIAA Journal of Guidance, Control and Dynamics, 25, pp. 1081-1090.

Single Gimbal CMGs typically produce larger torques for the same actuator mass compared to reaction wheels. However, the dynamics of CMGs is more complex than that of reaction wheels, with inherent singularities in the map between the inputs (gimbal rates) and outputs (angular momentum or torque acting on spacecraft bus) (i.e. the CMG cannot produce a desired control torque vector). Most of the available steering laws that locally produce instantaneous control torques, have difficulties avoiding singularities in minimally redundant SGCMG systems. Most of the existing (VS)CMG dynamics models use some simplifying assumptions in their formulation. These assumptions are: (1) the offset between the rotor center of mass (CoM) and the gimbal axis (or CoM) in the direction of the rotor's rotation axis is zero i.e., σ=0; (2) both the gimbal and the rotor-fixed coordinate frames are their corresponding principal axes frames, the rotor is axisymmetric, and both rotor and gimbal inertias are about their respective center of masses (i.e., J_(r)=J_(r) _(CoM) and J_(g)=J_(g) _(CoM) ); (3) the gimbal frame structure has “negligible” inertia (i.e., J_(g)≃0); (4) the angular rate of the gimbal frame is much smaller (“negligible”) compared to the rotor angular rate about its symmetry axis (i.e., {dot over (α)}(t)<<{dot over (θ)}(t)); and (5) for a CMG, the speed of the rotor {dot over (θ)} is constant (i.e., the VSCMG is operated as a standard SGCMG).

In the present invention, a more general dynamics model of a spacecraft with VSCMG is obtained without using most or any of these assumptions. Since the configuration space of attitude motion of a spacecraft with internal actuators is a nonlinear manifold, the global dynamics of this system is preferably treated using the formulation of geometric mechanics. This model is obtained using variational mechanics, and in the framework of geometric mechanics on the nonlinear state space of this system. The dynamics model is thereafter generalized to a spacecraft with a finite number of VSCMGs. The dynamics model obtained here is applicable to VSCMGs with non-axisymmetric rotors and gimbals, where the rotation axis of the rotor may be offset from the center of mass of the gimbal structure. While it is true that existing VSCMG designs may not require these properties when manufactured, it is possible that during installation within a spacecraft bus or during the course of operations they become misaligned, in which case this generalized model and the control schemes based on it would still apply.

SUMMARY OF THE INVENTION (DISCLOSURE OF THE INVENTION)

The present invention is a variable speed control moment gyroscope (VSCMG) comprising a gimbal frame, a flywheel, and a desired offset between the center of mass of the gimbal frame and the center of mass of the flywheel. The VSCMG preferably comprises a higher control authority than an otherwise identical VSCMG without the desired offset at identical gimbal and flywheel rotation rates. The

VSCMG preferably generates more angular momentum and torque than an otherwise identical VSCMG without the desired offset at identical gimbal and flywheel rotation rates and preferably generates more angular momentum and torque per unit power consumption than an otherwise identical VSCMG without the desired offset. Angular momentum and torque produced by the VSCMG preferably increases with the distance of the VSCMG from the center of mass of a spacecraft bus. The desired offset is preferably in the direction of the flywheel's rotation axis. The gimbal coordinate frame is preferably not the same as its principal axis frame. The flywheel fixed coordinate frame is preferably not the same as its principal axis frame. The flywheel is preferably not axisymmetric. The flywheel inertia is preferably not about the center of mass of the flywheel. The gimbal inertia is preferably not about the center of mass of the gimbal frame. The inertia of the gimbal frame is preferably not negligible or approximately zero. The angular rate of the gimbal frame is preferably not negligible compared to the angular rate of the flywheel about its symmetry axis. The VSCMG preferably does not comprise a control singularity in a map between the gimbal rotation rate and/or the flywheel rotation rate and angular momentum or torque produced by the VSCMG. The desired offset is preferably at least an order of magnitude greater than an offset between the center of mass of the gimbal frame and the center of mass of the flywheel occurring during manufacture of the VSCMG due to manufacturing tolerances. The desired offset is preferably specified in the design of the VSCMG.

Objects, advantages and novel features, and further scope of applicability of the present invention will be set forth in part in the detailed description to follow, taken in conjunction with the accompanying drawings, and in part will become apparent to those skilled in the art upon examination of the following, or may be learned by practice of the invention. The objects and advantages of the invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated into and form a part of the specification, illustrate embodiments of the present invention and, together with the description, serve to explain the principles of the invention. The drawings are only for the purpose of illustrating embodiments of the invention and are not to be construed as limiting the invention. In the drawings:

FIG. 1a is a CAD rendering of an embodiment of a VSCMG comprising an axisymmetric rotor; FIGS. 1b and 1c are vector representations of VSCMG axes, with the rotor offset in the axial direction η(α(t) from the center of mass of the gimbal about its axis g.

FIG. 2a is a CAD rendering of three VSCMGs in a tetrahedron configuration; FIG. 2b shows a satellite comprising three VSCMG actuators; FIG. 2c is a vector representation of three VSCMGs in the tetrahedron configuration with respect to the base body coordinate frame [XYZ].

FIG. 3a is a graph of the norm of angular velocity of the spacecraft base-body; FIG. 3b is a graph of the norm of control torque; FIG. 3c is a graph of attitude stabilization error, and FIG. 3d is a graph of the norm of VSCMG angular momentum, output u=

{dot over (Γ)}.

FIG. 4a is a graph showing the VSCMG gimbal rate at σ=0, and FIG. 4b is a graph showing the VSCMG gimbal rate at σ=0.005 m.

FIG. 5a is a graph showing the VSCMG rotor rate at σ=0, and FIG. 5b is a graph showing the VSCMG rotor rate at σ=0.005 m.

FIG. 6a is a graph showing the difference in the gimbal rate between zero offset VSCMGs and nonzero-offset VSCMGs in corresponding locations in a tetrahedron configuration, i.e. {dot over (α)}_(e) ^(i)={dot over (α)}_(σ=0) ^(i)−{dot over (α)}_(σ≠0) ^(i).

FIG. 6b is a graph showing the difference in the rotor rate between three zero offset VSCMG and a nonzero-offset VSCMG in corresponding locations in a tetrahedron configuration, i.e. {dot over (θ)}_(e) ^(i)={dot over (θ)}_(σ=0) ^(i)−{dot over (θ)}_(σ≠0) ^(i).

FIG. 7 is a table of simulation parameters.

FIG. 8a shows an embodiment of a micro-VSCMG for a 1U cubesat.

FIG. 8b shows a 1U cubesat comprising a plurality of VSCMG's of the present invention.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

Control moment gyroscopes are used inside spacecraft for fine pointing control and other maneuvers requiring a change in the spacecraft's orientation. Variable speed control moment gyroscopes (VSCMGs) typically comprise a flywheel or rotor whose rotation speed can be varied and whose rotation axis is mounted orthogonal to a gimbal; this gimbal is typically rotated about an axis fixed in the spacecraft body. Most manufactured CMGs have small offsets between the center of mass of the gimbal on which the flywheel is mounted, and the center of mass of the flywheel itself. It is difficult to ensure that these center of mass locations match up exactly. Embodiments of the present invention are novel hardware designs and associated control software for a VSCMG that includes Inertia variations of the gimbal on which the flywheel is mounted, taking into account the mass and rotational inertia of the gimbal frame structure. There is preferably an offset between the center of the rotor and the center of the gimbal axis, which increases the control authority for attitude maneuvers of the spacecraft. In the existing technical literature on the dynamics and controls of spacecraft with single gimbal CMG, the effects of the mass and inertia of the gimbal frame, the offset of center of mass of the rotor from the gimbal rotation axis, and the angular rate and angular acceleration of the gimbal, are not considered significant. However, these parameters can have significant effect on the rotation rates of the flywheel and the gimbal required for typical spacecraft de-tumbling and reorientation maneuvers, leading to as large as a 20% change in the rotation rates for spacecraft de-tumbling maneuvers for micro- and nano-spacecraft. The present VSCMG hardware design and software control scheme is based on an accurate dynamics model without unnecessary assumptions that lead to control singularities in other designs. In particular, embodiments of the present VSCMG design require smaller gimbal and flywheel rotation rates to provide the same control authority on the spacecraft bus for a typical spacecraft de-tumbling maneuver, compared with existing designs.

Attitude Kinematics of a Spacecraft with One VSCMG

The dynamics model of a spacecraft with a single VSCMG is formulated. The gimbal axis of the VSCMG is orthogonal to the rotor's axis of rotation, which passes through its center of mass. There is a scalar offset along the rotor axis between the centers of mass of the gimbal and the rotor; this offset is denoted σ. A schematic CAD rendering of a VSCMG assembly, is shown in FIG. 1a . Consider a right-handed coordinate frame fixed to the center of mass of the spacecraft base body (spacecraft bus), which has a VSCMG as an internal attitude actuator. The attitude of the spacecraft is given by the rotation matrix from this base body-fixed coordinate frame to an inertially fixed coordinate frame. Consider the gimbal of the VSCMG to rotate about an axis fixed with respect to this spacecraft base body coordinate frame. Let g∈

² denote the fixed axis of rotation of the gimbal, and let η(α(t))∈

² denote the instantaneous direction of the axis of rotation of the rotor at time instant t, both expressed as unit vectors in the base body coordinate frame. By construction, η(α(t)) is normal to the fixed gimbal axis g. Let σ be the distance of the center of rotation of the rotor from the center of mass of the gimbal; this distance is assumed to be along the vector η(α(t)). Define a VSCMG gimbal-fixed coordinate frame with its first coordinate axis along g, its second axis along η(α(t) and its third axis along g×η(α(t)), to form a right-handed orthonormal triad of basis vectors as depicted in FIG. 1 b.

Rotational Kinematics

Let α(t) represent the gimbal angle, which is the rotation angle of rotor axis η about the gimbal axis g. Therefore, if η₀ denotes the initial rotor axis direction vector with respect to the base body frame, the rotor axis at time t>0 is given by η(α(t))=exp(α(t)g ^(×))η(0)=cosα(t)η₀+sinα(t)(g×η ₀),  (1) using Rodrigues' rotation formula. Let R_(g) denote the rotation matrix from the VSCMG gimbal-fixed coordinate frame to the spacecraft base body coordinate frame, which can be expressed as R _(g)(α(t))=[g η(α(t)) g×η(α(t))].  (2) The time rate of change of the rotor axis η(α(t)) is given by {dot over (η)}(α(t), {dot over (α)}(t))={dot over (α)}(t)(cosα(t)(g×η ₀)−sinα(t)η₀)={dot over (α)}(t)g ^(×)η(α(t)).   (3) where the map (•)^(×):

³→

(3) is the vector space isomorphism ∈

³ and ∈

(3), given by:

$g^{x} = {\begin{bmatrix} g_{x} \\ g_{y} \\ g_{z} \end{bmatrix}^{x} = {\begin{bmatrix} 0 & {- g_{z}} & g_{y} \\ g_{z} & 0 & {- g_{x}} \\ {- g_{y}} & g_{x} & 0 \end{bmatrix}.}}$

The time derivative of R_(g) is then given by

$\begin{matrix} {\begin{matrix} {{{\overset{.}{R}}_{g}\left( {{\alpha(t)},{\overset{.}{\alpha}(t)}} \right)} = \begin{bmatrix} 0 & | & {{\overset{.}{\alpha}(t)}g \times {\eta\left( {\alpha(t)} \right)}} & | & {g \times {\overset{.}{\eta}\left( {\alpha(t)} \right)}} \end{bmatrix}} \\ {= \begin{bmatrix} 0 & | & {{\overset{.}{\alpha}(t)}g \times {\eta\left( {\alpha(t)} \right)}} & | & {g \times \left( {{\overset{.}{\alpha}(t)}g \times {\eta\left( {\alpha(t)} \right)}} \right)} \end{bmatrix}} \end{matrix}.} & (4) \end{matrix}$ Using the vector triple product (a^(×)b^(×)c=(a^(T)c)b−(a^(T)b)c) identity in the last step above, the above can also be expressed as {dot over (R)} _(g)(α(t), {dot over (α)}(t))=R _(g)(α(t))[0|{dot over (α)}(t)e ₃|−{dot over (α)}(t)e ₂]={dot over (α)}(t)R _(g)(α(t))e ₁ ^(×),  (5) where e₁=[1 0 0]^(T), e₂=[0 1 0]^(T) and e₃=[0 0 1]^(T) are the standard basis vectors (as column vectors) of

³. Since e₁ denotes the gimbal axis in the gimbal-fixed frame, the angular velocity of the gimbal-fixed frame with respect to the base body, expressed in the base body frame, is ω_(g)(t, {dot over (α)})={dot over (α)}(t)g.  (6) Let θ(t) denote the instantaneous angle of rotation of the rotor about its symmetry axis η(α(t)); this is the angle between the first axis of a VSCMG rotor-fixed coordinate frame and the gimbal axis, where the rotor axis forms the second coordinate axis of this coordinate frame. For a VSCMG, the angular speed of the rotor {dot over (θ)}(t) is time-varying and a constant rotor rate corresponds to a CMG. The rotation matrix from this VSCMG rotor-fixed coordinate frame to the base body coordinate frame is R _(r)(α(t), θ(t))=R _(g)(α(t))exp(θ(t)e ₂ ^(×)).  (7) The time rate of change of the rotation matrix R_(r) is obtained as follows:

$\begin{matrix} {{{\overset{.}{R}}_{r}\left( {{\alpha(t)},{\theta(t)},{\overset{.}{\alpha}(t)},{\overset{.}{\theta}(t)}} \right)} = {{{{\overset{.}{R}}_{g}\left( {{\alpha(t)},{\overset{.}{\alpha}(t)}} \right)}{\exp\left( {{\theta(t)}e_{2}^{x}} \right)}} +}} \\ {{R_{g}\left( {\alpha(t)} \right)}{\exp\left( {{\theta(t)}e_{2}^{x}} \right)}{\overset{.}{\theta}(t)}e_{2}^{x}} \\ {= {{{\overset{.}{\alpha}(t)}{R_{r}\left( {{\alpha(t)},{\theta(t)}} \right)}\left( {{\exp\left( {{- {\theta(t)}}e_{2}^{x}} \right)}e_{1}} \right)^{x}} +}} \\ {{{R_{r}\left( {{\alpha(t)},{\theta(t)}} \right)}{\overset{.}{\theta}(t)}e_{2}^{x}},} \end{matrix}$ using the fact that R^(T)a^(×)R=(R^(T)a)^(×)for R∈SO(3) and a∈

³. It can be verified that the following holds for ϕ∈

¹: exp(ϕe ₂ ^(×))e ₁=(cosϕ)e ₁−(sinϕ)e ₃. Making use of this identity, the time derivative of R_(r) can be expressed as {dot over (R)} _(r)(α(t), θ(t), {dot over (α)}(t), {dot over (θ)}(t))=R_(r)(α(t), θ(t))({dot over (α)}(t)((cos(θ(t))e ₁+(sinθ(t))e ₃)+{dot over (θ)}(t)e ₂ ^(×).

Therefore, the angular velocity of the VSCMG rotor with respect to the base body, expressed in the base body frame, is

$\begin{matrix} \begin{matrix} {{\omega_{r}\left( {{\alpha(t)},{\overset{.}{\alpha}(t)},{\overset{.}{\theta}(t)}} \right)} = {{R_{r}\left( {{\alpha(t)},\theta} \right)}\left( {{{\overset{.}{\alpha}(t)}\left( {{\left( {\cos\;{\theta(t)}} \right)e_{1}} + {\left( {\sin\;{\theta(t)}} \right)e_{3}}} \right)} + {{\overset{.}{\theta}(t)}e_{2}}} \right)}} \\ {= {{{\overset{.}{\alpha}(t)}{R_{g}\left( {\alpha(t)} \right)}e_{1}} + {{\overset{.}{\theta}(t)}{R_{g}\left( {\alpha(t)} \right)}e_{2}}}} \\ {= {{{\overset{.}{\alpha}(t)}g} + {{\overset{.}{\theta}(t)}{{\eta\left( {\alpha(t)} \right)}.}}}} \end{matrix} & (8) \end{matrix}$ Let R(t) denote the rotation matrix from the base body-fixed coordinate frame to an inertial coordinate frame. If Ω(t) is the total angular velocity of the base body with respect to the inertial frame and expressed in the base body frame, then the attitude kinematics of the base body is given by {dot over (R)}(t)=R(t)Ω(t)^(×).  (9)

Let ρ₉ denote the position vector from the center of mass of the base-body to the center of mass of the gimbal, expressed in the base body frame. The position vector from the center of mass of the base-body to the center of mass of the rotor is therefore given by ρ_(r)(α(t))=ρ_(g)+ση(α(t)) in the base body frame. These vectors can be expressed in the inertial frame as r _(g)(R(t))=R(t)ρ_(g) and r _(r)(R(t), α(t))=R(t)ρ_(r)(α(t)). Thus, the inertial velocities of these centers of masses with respect to the base-body center of mass are given by {dot over (r)} _(g)(R(t), Ω(t))=R(t)Ω(t)^(×)ρ_(g) and {dot over (r)} _(r)(R(t), Ω(t), α(t), {dot over (α)}(t))=R(t)(Ω(t)^(×)ρ_(r)(α(t))+σ{dot over (α)}(t)g ^(×)η(α(t))).  (10)

The spacecraft with a VSCMG has five rotational degrees of freedom, which are described by the variables α, θ and R. The configuration space Q of this system has the structure of a principal (fiber) bundle with base space B=

²=

¹×

¹ and fiber G=SO(3).

Lagrangian Dynamics: The Lagrangian of a Spacecraft with One VSCMG

The dynamics model of a spacecraft with a VSCMG is developed in this section. The generalized model of a VSCMG consists of a rotor of mass m_(r) and inertia matrix J_(r) about its center of mass; this rotor is mounted on a gimbal structural frame of mass m_(g) and inertia matrix J_(g) about its center of mass. For notational convenience, the time-dependence of variables are not explicitly denoted, i.e., Ω=Ω(t), R_(g)(α)=R_(g)(α(t)), {dot over (r)}_(r)(α, {dot over (α)})={dot over (r)}_(r)(α(t), {dot over (α)}) etc. Therefore, the total rotational kinetic energy of the gimbal (alone) is

$\begin{matrix} {{{T_{g}\left( {\Omega,\alpha,\overset{.}{\alpha}} \right)} = {{\frac{1}{2}\left( {\Omega + {\omega_{g}\left( \overset{.}{\alpha} \right)}} \right)^{T}{R_{g}(\alpha)}J_{g}{R_{g}(\alpha)}^{T}\left( {\Omega + {\omega_{g}\left( \overset{.}{\alpha} \right)}} \right)} + {\frac{1}{2}m_{g}{\overset{.}{r}}_{g}^{T}{\overset{.}{r}}_{g}}}},} & (11) \end{matrix}$ and the total rotational kinetic energy of the rotor (alone) is

$\begin{matrix} {{T_{r}\left( {\Omega,\alpha,\overset{.}{\alpha},\theta,\overset{.}{\theta}} \right)} = {{\frac{1}{2}\left( {\Omega + {\omega_{r}\left( {\alpha,\overset{.}{\alpha},\overset{.}{\theta}} \right)}} \right)^{T}{R_{r}\left( {\alpha,\theta} \right)}J_{r}{R_{r}\left( {\alpha,\theta} \right)}^{T}\left( {\Omega + {\omega_{r}\left( {\alpha,\overset{.}{\alpha},\overset{.}{\theta}} \right)}} \right)} + {\frac{1}{2}m_{r}{{\overset{.}{r}}_{r}\left( {\alpha,\overset{.}{\alpha}} \right)}^{T}{{\overset{.}{r}}_{r}\left( {\alpha,\overset{.}{\alpha}} \right)}}}} & (12) \end{matrix}$ Let J_(b) denote the inertia matrix of the base body expressed in the base body frame. The rotational kinetic energy of the base body of the spacecraft is

$\begin{matrix} {{T_{b}(\Omega)} = {\frac{1}{2}\Omega^{T}J_{b}{\Omega.}}} & (13) \end{matrix}$ Therefore, the total rotational kinetic energy of the system is T(Ω, α, {dot over (α)}, θ, {dot over (θ)})=T _(g)(Ω, α, {dot over (α)})+T _(r)(Ω, α, {dot over (α)}, θ, {dot over (θ)})+T _(b)(Ω).  (14) In a compact notation, the total kinetic energy (14) of a spacecraft with a VSCMG is expressed as

$\begin{matrix} {{{T\left( {\gamma,\chi} \right)} = {\frac{1}{2}\chi^{T}{\mathcal{J}(\gamma)}\chi}},} & (15) \end{matrix}$ where,

$\begin{matrix} {\gamma = {{\begin{bmatrix} {\alpha(t)} \\ {\theta(t)} \end{bmatrix}.\chi} = {{\begin{bmatrix} {\Omega(t)} \\ {\overset{.}{\gamma}(t)} \end{bmatrix}\mspace{14mu}{and}\mspace{14mu}{\mathcal{J}(\gamma)}} = {\begin{bmatrix} {\Lambda(\gamma)} & {B(\gamma)} \\ {B(\gamma)}^{T} & {J_{g\; r}(\gamma)} \end{bmatrix}.}}}} & (16) \end{matrix}$ Associated quantities of equation (16) are: Λ(γ)=Λ₀ +I _(T)(γ); Λ₀ =J _(b)−(m _(g) +m _(r))(ρ_(g) ^(×))², I _(T)(γ)=J _(c)(γ)+I _(c)(α)−m _(r)ση(α)^(×)ρ_(g) ^(×),  (17) J _(c)(γ)=R _(g)(α)J _(g) R _(g)(α)^(T) +R _(r)(γ)J _(r) R _(r)(γ)^(T),  (18) I _(c)(α)=−m _(r)σ(ρ_(g) ^(×)η(α)^(×)+σ(η(α)^(×))²),  (19) B(γ)=[(J _(c)(γ)+I _(c)(α))g R _(r) J _(r) R _(r) ^(T)η(α)]∈

^(3×2), I _(r)(α)=−m _(r)(ση(α)^(×))²,  (20)

$\begin{matrix} {{J_{g\; r}(\gamma)} = {\begin{bmatrix} {{g^{T}\left( {{J_{c}(\gamma)} + {I_{r}(\alpha)}} \right)}g} & {g^{T}R_{r}J_{r}R_{r}^{T}{\eta(\alpha)}} \\ {{\eta(\alpha)}^{T}R_{r}J_{r}R_{r}^{T}g} & {{\eta(\alpha)}^{T}R_{r}J_{r}R_{r}^{T}{\eta(\alpha)}} \end{bmatrix} \in {{\mathbb{R}}^{2 \times 2}.}}} & (21) \end{matrix}$ Consider the spacecraft system to be in the absence of any gravitational potential. In this case, the Lagrangian for the spacecraft with a VSCMG is given by L(γ, χ)=T(γ, χ).  (22) Note that the Lagrangian is independent of the attitude R of the base body in this case. Lagrangian Dynamics: Equations of Motion

The equations of motion for a spacecraft with a VSCMG are obtained using variational mechanics, taking into account the geometry of the configuration space. The action functional over a time interval [0, T] is defined as S(L(γ, χ))=∫₀ ^(T)L(γ, χ)dt,  (23) which depends on the time evolution of the states R, Ω, α, {dot over (α)}, θ and {dot over (θ)} in this interval. Note that η, {dot over (η)} are uniquely specified by a, {dot over (a)} and the constant vector g. In the presence of non-conservative external and internal torques to the spacecraft base body and the VSCMG, the Lagrange-d'Alembert principle is used to obtain the dynamics equations of motion for the system. Considering only non-conservative internal torques acting on the gimbal τ_(g) and rotor τ_(r−) of the VSCMG, then Lagrange-d'Alembert principle for the system can be written as

$\begin{matrix} {{{{\delta\; S} + {\int_{0}^{T}{\tau^{T}\delta\;\gamma\; d\; t}}} = 0},{{{where}\mspace{14mu}\tau} = {\begin{bmatrix} {\tau_{g}(t)} \\ {\tau_{r}(t)} \end{bmatrix}.}}} & (24) \end{matrix}$

Before obtaining the first variation of the action functional, the first variations of the variables RϵSO(3), Ω∈

³, η∈

², and {dot over (η)}∈T_(η)

² are expressed as follows: δR=RΣ ^(×), δΩ={dot over (Σ)}+Ω×Σ,  (25) δη=δαg ^(×)η, δ{dot over (η)}=δ{dot over (α)}g ^(×) η+δαg ^(×){dot over (η)},  (26) where Σ^(×)∈

(3) gives a variation vector field on SO(3); thus, δR is tangent to SO(3) at the point R. Using equation (3), the vector triple product identity, and the fact that g and η are orthogonal vectors, the second of equations (26) can be expressed as δ{dot over (η)}=δ{dot over (α)}g ^(×)η−{dot over (α)}δαη.  (27)

These variations must be fixed endpoint variations, such that: Σ(0)=Σ(T)=0, δα(0)=δα(T)=0, and δθ(0)=δθ(T)=0.

Define the following angular momentum quantities, which depend on the kinetic energy (15):

$\begin{matrix} {{\prod{= {\frac{\partial\mathcal{L}}{\partial\Omega} = {\frac{\partial T}{\partial\Omega} = {{{\Lambda(\gamma)}\Omega} + {{B(\gamma)}\overset{.}{\gamma}}}}}}},} & (28) \end{matrix}$

$\begin{matrix} {p = {\frac{\partial\mathcal{L}}{\partial\overset{.}{\gamma}} = {\frac{\partial T}{\partial\overset{.}{\gamma}} = {{{B(\gamma)}^{T}\Omega} + {{J_{gr}(\gamma)}{\overset{.}{\gamma}.}}}}}} & (29) \end{matrix}$ The equations of motion obtained from applying the Lagrange-d'Alembert principle (24) are as follows:

$\begin{matrix} {\frac{d\;\pi}{d\; t} = {\pi \times \Omega}} & (30) \end{matrix}$

$\begin{matrix} {\frac{dp}{d\; t} = {\frac{\partial T}{\partial\gamma} + \tau}} & (31) \end{matrix}$ For an axis-symmetric rotor rotating about its axis of symmetry, the Lagrangian is independent of the angle θ and the scalar angular momentum p_(θ)would be conserved in the absence of any friction or torques acting on the rotor.

Lagrangian Dynamics: Relations Between Total Angular Momentum and VSCMG Momenta The angular momenta (p_(α) and p_(θ)) corresponding to the two degrees of freedom of the VSCMG, are related to the angular rates {dot over (α)}, {dot over (θ)} and spacecraft base body's angular velocity vector Ω as follows:

$\begin{matrix} {{\begin{bmatrix} {{g^{T}\left( {{J_{c}(\gamma)} + {I_{r}(\alpha)}} \right)}g} & {g^{T}R_{r}J_{r}R_{r}^{T}{\eta(\alpha)}} \\ {{\eta(\alpha)}^{T}R_{r}J_{r}R_{r}^{T}g} & {{\eta(\alpha)}^{T}R_{r}J_{r}R_{r}^{T}{\eta(\alpha)}} \end{bmatrix}\left\lbrack \begin{matrix} \overset{.}{\alpha} \\ \theta \end{matrix} \right\rbrack} = {\quad\left\lbrack \begin{matrix} {p_{\alpha} - {{g^{T}\left( {{J_{c}(\gamma)} + {I_{c}(\alpha)}} \right)}\Omega}} \\ {p_{\theta} - {{\eta(\alpha)}^{T}R_{r}J_{r}R_{r}^{T}\Omega}} \end{matrix} \right\rbrack}} & (32) \end{matrix}$ Equation (32) can be expressed more compactly as J _(gr)(γ){dot over (γ)}=p−B(γ)^(T)Ω.  (33)

Using the notation defined in (21)-(20), the total angular momentum of the spacecraft is expressed as:

$\begin{matrix} {\Pi = {\overset{\overset{{Spacecraft}\mspace{14mu}{basebody}\mspace{14mu}{momenta}}{︷}}{\left( {\Lambda_{0} + {I_{T}(\gamma)}} \right)\Omega} + \underset{\underset{{VSCMG}\mspace{14mu}{momenta}}{︸}}{{B(\gamma)}\overset{.}{\gamma}}}} & (34) \end{matrix}$ where the first term is the spacecraft base body momenta and the second term is the VSCMG momenta. As described earlier, this configuration space has the structure of a fiber bundle with its base space coordinates given by the VSCMG coordinates α and θ and its fiber space described by the attitude R of the base body. The total angular momentum of a spacecraft with a VSCMG can be expressed in a compact way as,

$\begin{bmatrix} \Pi \\ p \end{bmatrix} = {{{\mathcal{J}(\gamma)}\begin{bmatrix} \Omega \\ \overset{.}{\gamma} \end{bmatrix}}.}$ Spacecraft with Multiple VSCMGs

The spacecraft equations of motion with one VSCMG developed previously are extended to the case of a spacecraft with multiple (n>1) VSCMGs in this section. Generalization of the relationship between internal (VSCMG) momenta and the base body's overall angular momentum for a spacecraft with n VSCMGs of the type depicted in FIG. 1b , where (n>1) is looked upon. For such a spacecraft, the configuration space Q of the dynamics is a principal bundle with base space B=

²×

²× . . .

² (n-fold product) or B=(

²)^(n), and fiber space F=SO(3). The quantities corresponding to the ith VSCMG in the set of n VSCMGs are denoted by using the superscript (•)^(i). For this system, the mass matrix is of the form

$\begin{matrix} {{{\mathcal{J}(\Gamma)} = \begin{bmatrix} {\Lambda(\Gamma)} & {B^{1}\left( \gamma^{1} \right)} & \ldots & {B^{n}\left( \gamma^{n} \right)} \\ {B^{1}\left( \gamma^{1} \right)}^{T} & {J_{g\; r}^{1}\left( \gamma^{1} \right)} & \ldots & 0 \\ \vdots & \vdots & \ldots & 0 \\ {B^{n}\left( \gamma^{n} \right)}^{T} & 0 & \ldots & {J_{g\; r}^{n}\left( \gamma^{n} \right)} \end{bmatrix}},} & (35) \end{matrix}$ where,

$\begin{matrix} {\mspace{79mu}{{{\Lambda(\Gamma)} = {\Lambda_{0} + {\sum\limits_{i = 1}^{n}{I_{T}^{i}\left( \gamma^{i} \right)}}}},}} & (36) \\ {\mspace{79mu}{{\Lambda_{0} = {J_{b} - {\sum\limits_{i = 1}^{n}\left( {\left( {m_{g}^{i} + m_{r}^{i}} \right)\left( \left\lbrack \rho_{g}^{i} \right\rbrack^{x} \right)^{2}} \right)}}},}} & (37) \\ {{I_{T}^{i}\left( \gamma^{i} \right)} = {{\sum\limits_{i = 1}^{n}{R_{g}^{i}{J_{g}\left( R_{g}^{i} \right)}^{T}}} + {R_{r}^{i}{J_{r}\left( R_{r}^{i} \right)}^{T}} - {m_{r}^{i}{\sigma^{i}\left\lbrack {{{\sigma^{i}\left( {\eta^{i}\left( \alpha^{i} \right)}^{x} \right)}^{2} - \left( {\eta^{i}\left( {{\left( \alpha^{i} \right)^{x}\left( \rho_{g}^{i} \right)^{x}} + {\left( \rho_{g}^{i} \right)^{x}{\eta^{i}\left( \alpha^{i} \right)}^{x}}} \right)} \right\rbrack},} \right.}}}} & (38) \end{matrix}$ and γ^(i)=[α^(i)θ^(i)]^(T)∈

² denotes the vector of angles of the ith VSCMG. The structure of the mass matrix ξ(Γ)∈

^((3+2n)×(3+2n)) shows that the angular momentum contributions from each individual VSCMG to the base body's total angular momentum, are given by the B^(i)(γ^(i)). The total angular momentum of the spacecraft with multiple VSCMGs is given by

$\begin{matrix} {{\prod{= {{{\left( {\Lambda_{0} + {\sum\limits_{i = 1}^{n}{I_{T}^{i}\left( \gamma^{i} \right)}}} \right)\Omega} + {\sum\limits_{i = 1}^{n}{{B^{i}\left( \gamma^{i} \right)}{\overset{.}{\gamma}}^{i}}}} = {{{\Lambda(\Gamma)}\Omega} + {{B(\Gamma)}\overset{.}{\Gamma}}}}}},} & (39) \end{matrix}$ where Γ=[γ¹γ² . . . γ^(n)]^(T)=_(i=1) ^(n)[γ^(i)]^(T)∈

^(2n),  (40) and B=[B ¹(γ¹)B ²(γ²) . . . B ^(n)(γ^(n))]∈

^(3×2n).  (41) The angular momentum of the ith VSCMG, denoted p^(i), is given by p ^(i) =B ^(i)(γ^(i))^(T) Ω+J _(gr) ^(i)(γ^(i)){dot over (γ)}^(i).  (42)

The vectors p^(i) can be concatenated to form a vector

∈

^(2n)

=_(i=1) ^(n) ∥[p ^(i)]^(T).  (43)

The relation between all angular momentum and angular velocity quantities for a spacecraft with n VSCMGs is given by combining equations (35), (40) and (43) as

$\begin{matrix} {\begin{bmatrix} \Pi \\ p \end{bmatrix} = {{{\mathcal{J}(\Gamma)}\begin{bmatrix} \Omega \\ \overset{.}{\Gamma} \end{bmatrix}}.}} & (44) \end{matrix}$ Attitude Control Using VSCMG For spacecraft attitude stabilization or tracking using VSCMGs, one needs to ensure that the angular velocity Ω. of the spacecraft base body, or alternately the base-body momentum Π_(b), is controlled using the internal momentum u, which depends on the VSCMG rotation rates {dot over (Γ)}. One can express the total angular momentum of the spacecraft with n VSCMGs, using equations (36) and (41) as follows Π=Π_(b) +u, where Π_(b)=Λ(Γ)Ω and u=

(Γ){dot over (Γ)}.  (45) Therefore, {dot over (Π)}_(b)=Π_(b)×Ω+(u×Ω−{dot over (u)})=Π_(b)×Ω+τ_(cp),  (46) where τ_(cp)=u×Ω−{dot over (u)} is the control torque generated by the “internal” momentum u from the VSCMGs. Note that from (46) and the attitude kinematics (9), the total momentum in an inertial frame, Π_(I)=RΠ=R(Π_(b)+u) is conserved. There are several control problems of interest fora spacecraft with n VSCMGs. For most applications, the common spacecraft attitude maneuvers are slewing to rest, pointing, and attitude tracking maneuver. The results and discussion for a slew to rest attitude control scheme (de-tumbling maneuver) for a spacecraft with multiple VSCMGs are presented in Sanyal, A., Prabhakaran, V., Leve, F., and McClamroch, N., 2013, “Geometric approach to attitude dynamics and control of spacecraft with variable speed control moment gyroscopes”, in 2013 IEEE International Conference on Control Applications (CCA), pp. 556-561; and Viswanathan, S. P., Sanyal, A., Leve, F., and McClamroch, H. N., 2013. “Geometric mechanics based modeling of the attitude dynamics and control of spacecraft with variable speed control moment gyroscopes”, in ASME Dynamical System Control Conference, no. DSCC 2013-4033. Pointing Maneuver of Spacecraft with n VSCMGs

The objective of a pointing maneuver of spacecraft with n VSCMGs is to point a body-fixed imaging, communication or other instrument in a specified direction in the reference frame, where rotation about that specified body-fixed direction are not important. The control problem of pointing the spacecraft to a desired attitude in the zero level momentum set given by Π_(I)=0, is considered. Therefore, equation (45) becomes Π_(b)+u=0, which gives u=−Π_(b) as the effective control provided by the VSCMG angular rates. To achieve this, a continuous feedback controller given by τ_(cp)(R, Ω):SO(3)×

³→

³, is selected that asymptotically stabilizes the desired attitude equilibrium given by the desired attitude R_(d)∈SO(3) and the angular velocity, Ω(t)=0. The continuous feedback control torque for this system given by, τ_(cp) =−L _(v) Ω−L _(p)Ξ(R)  (47) where L_(v), L_(p)∈

^(3×3) are positive definite matrices and the map

$\begin{matrix} {{{\Xi(R)}\overset{\bigtriangleup}{=}{\sum\limits_{i = 1}^{3}{a_{i}e_{i} \times \left( {R_{d}^{T}{R \cdot e_{i}}} \right)}}},} & (48) \end{matrix}$ with [e₁ e₂ e₃]≡I_(3×3) and a=[a₁ a₂ a₃]^(T) where a₁, a₂, and a₃ are distinctive positive integers which asymptotically stabilizes the angular velocity Ω(t) to zero vector and thereby brings the system to a desired attitude, R_(d)ϵSO(3). The almost global asymptotically stable control law given in equation (47) brings the spacecraft base-body from an arbitrary initial attitude and angular velocity to a rest attitude.

The control inputs are the VSCMG angular rates, obtained by taking the pseudo-inverse of B in equation (45), which gives the gimbal rates ({dot over (α)}^(i)) and rotor rates ({dot over (θ)}^(i)) of all VSCMGs: {dot over (Γ)}=

^(†) u,  (49) where u is obtained by integrating τ_(cp)=u×Ω−{dot over (u)}.The VSCMGs need to be positioned in a way such that:

∈

^(m×n) in equation (49) always has full row rank; i.e.,

^(†) is non-singular. Then

^(†) is the right inverse of

, such that

^(†)=I_(m). The pseudo-inverse is explicitly given by,

^(†=)

^(T)(

^(T))⁻¹. The sufficient condition for

to be non-singular is given below. Null Motion of VSCMG

The rotor is often required to maintain a nominal angular rate at its breakaway velocity, to minimize the effect of static friction on the motor and bearings. This can be achieved by spinning the VSCMG gimbals and rotors, such that the vector of VSCMG rates {dot over (Γ)} is in the null-space of

∈

^(3×2n);

this is termed the null motion of the VSCMG assembly. The projection matrix to the null-space of

is given by

=(I _(2n×2n)−

^(T)(

^(T))⁻¹

),  (50) such that

²=

and

=0. Let

∈

^(2n) be the vector of preferred or nominal VSCMG rates. Then the vector of VSCMG rates with null motion is given by {dot over (Γ)}=

^(†) u+{dot over (Γ)} _(n) such that {dot over (Γ)}_(n)=

.  (51) Generalized VSCMG Momenta

The momentum contribution from a VSCMG to the total angular momentum of the spacecraft (45) is given as u=B(γ){dot over (γ)}=(J _(c)(γ)+I _(c)(α)){dot over (α)}g+R _(r) J _(r) R _(r) ^(T){dot over (θ)}η(α).  (52)

The inertia terms (18) and (19) are given as, J _(c)(γ)=R _(g) J _(g) R _(g) ^(T) +R _(r) J _(r) R _(r) ^(T) , I _(c)(α)=−m _(r)σ(ρ_(g) ^(×)η(α)^(×)+σ(η(α)^(×))²), and therefore u={dot over (α)}J _(c)(γ)g+{dot over (α)}I _(c)(α)g+{dot over (θ)}R _(r) J _(r) R _(r) ^(T)η(α).  (53)

Note that R_(r)=R_(g)exp(θe₂ ^(×)). The first term on the expression for u can be simplified to

$\begin{matrix} \begin{matrix} {{{{J_{c}(\gamma)}g} = {{R_{g}J_{g}R_{g}^{T}g} + {R_{r}J_{r}R_{r}^{T}g}}},} \\ {= {{R_{g}J_{g}e_{1}} + {R_{r}{{J_{r}\left( {{\cos\;\theta\; e_{1}} + {\sin\;\theta\; e_{3}}} \right)}.}}}} \end{matrix} & (54) \end{matrix}$ The second term in the equation (53) can be written as,

$\begin{matrix} \begin{matrix} {{\overset{.}{\alpha}{I_{c}(\alpha)}g} = {{\overset{.}{\alpha}\left\lbrack {{- m_{r}}{\sigma\left( {{\rho_{g}^{x}{\eta(\alpha)}^{x}} + {\sigma\left( {\eta(\alpha)}^{x} \right)}^{2}} \right)}} \right\rbrack}g}} \\ {{= {m_{r}{\sigma\left\lbrack {\rho_{g}^{x} + {\sigma\;{\eta(\alpha)}^{x}}} \right\rbrack}{\overset{.}{\eta}(\alpha)}}},} \end{matrix} & (55) \end{matrix}$ and the last term of equation (53) is,

$\begin{matrix} \begin{matrix} {{R_{r}J_{r}R_{r}^{T}{\eta(\alpha)}} = {R_{r}J_{r}{\exp\left( {{- \theta}\; e_{2}^{x}} \right)}R_{g}^{T}{\eta(\alpha)}}} \\ {= {R_{r}J_{r}{\exp\left( {{- {\theta\left( e_{2}^{x} \right)}}e_{2}} \right.}}} \\ {= {R_{r}J_{r}{e_{2}.}}} \end{matrix} & (56) \end{matrix}$ Using equations (54)-(56), the expression (53) for u leads to, u={dot over (α)}([R _(g) J _(g) e ₁ +R _(r) J _(r)(cosθe ₁+sinθe ₃)]+m _(r)σρ_(g) ^(×)+ση(α)^(×) g ^(×)η(α))+{dot over (θ)}R _(r) J _(r) e ₂.  (57) Any assumptions to simplify the dynamics equation of a spacecraft with VSCMG will be reflected in the equation (57). Commonly Used Assumptions

The expression (57) for the angular momentum contribution of the VSCMGs can be reduced to the well-known expression for the angular momentum contribution from a set of CMGs of the prior art, by imposing some commonly used assumptions, as first described above: (1) the offset between the rotor center of mass and the gimbal axis in the direction of the rotor's rotation axis is zero i.e., σ=0; (2) both the gimbal and the rotor-fixed coordinate frames are their corresponding principal axes frames, the rotor is axisymmetric, and both rotor and gimbal inertias are about their respective center of masses (i.e., J_(r)=J_(r) _(CoM) and J_(g)=J_(g) _(CoM) ); (3) the gimbal frame structure has “negligible” inertia (i.e., J_(g)≃0); (4) the angular rate of the gimbal frame is much smaller (“negligible”) compared to the rotor angular rate about its symmetry axis (i.e., {dot over (α)}(t)<<{dot over (θ)}(t)); and (5) for a CMG, the speed of the rotor {dot over (θ)} is constant (i.e., the

VSCMG is operated as a standard SGCMG). The following analysis shows how this series of assumptions leads to the common model for the control torque on a spacecraft due to a standard control moment gyroscope. Here, the VSCMG momenta given in the expression (53) is reduced by applying the above-summarized assumptions, one by one in sequence.

Assumption (1): VSCMG rotor center of mass is perfectly aligned with gimbal center of mass along the gimbal axis g, i.e., setting σ=0 in equation (53). This leads to the following simplification, u={dot over (α)}(R _(g) J _(g) e ₁ +R _(r) J _(r)(cosθe ₁+sinθe ₃))+{dot over (θ)}R _(r) J _(r) e ₂.  (58) Assumption (2): By using the assumption that both the gimbal and the rotor inertias are about their respective center of masses i.e., J_(r)=J_(r) _(CoM) and J_(g)=J_(g) _(CoM) ; both the gimbal and the rotor fixed coordinate frames are their corresponding principal axes frames, and that the rotor is axisymmetric; thus, J _(g)=diag(J _(g1) , J _(g2) , J _(g3)), J _(r)=diag(J _(r1) , J _(r2) , J _(r1)). This simplifies the expression (54) to: J _(c)(γ)g=J _(g1) g+J _(r1) R _(r)(cosθe ₁+sinθe ₃).  (59)

Then expressing R_(r)e₁ and R_(r)e₃ as follows:

$\begin{matrix} {{R_{r}e_{1}} = {R_{g}{\exp\left( {\theta\; e_{2}^{x}} \right)}e_{1}}} \\ {{= {{g\;\cos\;\theta} - {\left( {g \times {\eta(\alpha)}} \right)\sin\;\theta}}},} \end{matrix}$ and $\begin{matrix} {{R_{r}e_{3}} = {R_{g}{\exp\left( {\theta\; e_{2}^{x}} \right)}e_{3}}} \\ {= {{\cos\;{\theta\left( {g \times {\eta(\gamma)}} \right)}} + {\sin\;\theta\;{g.}}}} \end{matrix}$

Substituting these in the expression for J_(c)(γ)g in equation (59), gives J _(c)(γg=(J _(g1) +J _(r1))g,  (60) which shows that this is a constant vector that is a scalar multiple of g. Further, reducing the last term of the expression (53) under the same assumption as,

$\begin{matrix} \begin{matrix} {{R_{r}J_{r}R_{r}^{T}{\eta(\alpha)}} = {{R_{r}J_{r}e_{2}} = {{\overset{r}{J}}_{r\; 2}{R_{\;}}_{r}e_{2}}}} \\ {= {J_{r\; 2}R_{g}{\exp\left( {\theta\; e_{2}^{x}} \right)}e_{2}}} \\ {= {J_{r\; 2}R_{g}e_{2}}} \\ {= {J_{r\; 2}{{\eta(\alpha)}.}}} \end{matrix} & (61) \end{matrix}$ Substituting these simplified expressions under the assumptions that: (1) the offset σ=0, and (2) both the gimbal and the rotor fixed coordinate frames are their corresponding principal axes frames, and that the rotor is axisymmetric; the angular momentum due to the rotational motions of the gimbal and rotor can be expressed as: u=α(J _(g1) +J _(r1))g+θJ _(r2)η(α).  (62) The rate of change of this angular momentum, which is part of the torque acting on the spacecraft's attitude dynamics due to the VSCMG, is given by τ_(u)={dot over (u)}={dot over (α)}(J _(g1) +J _(r1))g+{umlaut over (θ)}J _(r2η(α)+{dot over (α)}{dot over (θ)}) J _(r2) g ^(×)η(α).  (63)

Note that even under these assumptions on the symmetric inertia distribution of the VSCMG rotor and principal coordinate frame for gimbal and rotor, the torque τ_(u) has components along all three axes of the coordinate frame fixed to the VSCMG gimbal. These two assumptions are commonly used, although they may not be explicitly stated.

Assumption (3): The expressions for u in equation (62) and its time rate of change can be further simplified under the additional assumptions that the gimbal inertia is “negligible”, i.e., J_(g)≡J_(g1)≃0, u={dot over (α)}(J _(r1))g+{dot over (θ)}J _(r2)η(α).  (64) Assumption (4): The angular rate of the gimbal axis is much smaller (“negligible”) compared to the rotor rate about its symmetry axis (i.e., {dot over (α)}(t))<<{dot over (θ)}(t)). Under these assumptions, the contribution to the total angular momentum of the spacecraft from the VSCMG is obtained as, u={dot over (θ)}J _(r2)η(α).  (65) The time derivative of u(t), which is part of the control torque on the spacecraft due to the VSCMG, is evaluated under these assumptions. This is evaluated to be

$\begin{matrix} {{\tau_{u} = {\frac{du}{dt} = {{\overset{..}{\theta}J_{r\; 2}{\eta(\alpha)}} = {\overset{.}{\alpha}\overset{.}{\theta}J_{r\; 2}g^{\times}{\eta(\alpha)}}}}},} & (66) \end{matrix}$ which shows that under these additional assumptions, this torque component is on the plane normal to the gimbal axis g.

Assumption (5): Finally, the assumption that the speed of the rotor {dot over (θ)} is constant, which makes the

VSCMG a standard single gimbal CMG. Under the foregoing assumptions, the time rate of change of u is found to be given by

$\begin{matrix} {{\tau_{u} = {\frac{du}{dt} = {{\overset{.}{\theta}\overset{.}{\alpha}J_{r\; 2}g^{\times}{\eta(\alpha)}} = {\kappa\overset{.}{\alpha}g^{\times}{\gamma(\alpha)}}}}},} & (67) \end{matrix}$ where κ={dot over (θ)}J_(r2) is a constant scalar.

Note that assumptions (3) and (4) eliminates the torque component of τ_(u) along the gimbal axis, as can be seen from expression (66), and this component can certainly help from a control theoretic perspective. It is important to note that these assumptions and their validity have a large effect on the condition number of B(Γ) as defined by (41). Substantial research has been directed at avoiding “singularities” of CMG arrays or clusters, where the matrix

(Γ)) becomes instantaneously rank deficient. In the light of expressions (62) and (63) for u and τ_(u) under the assumptions (1) and (2) for VSCMGs, it is clear that the torque due to a VSCMG can be made to equal any torque vector in

³ by suitable choice of α, θ and their first two time derivatives, provided that actuator constraints on these time derivatives are not violated. Under assumptions (1), (2), and (5) for standard CMGs, it is clear that τ_(u) has no component along the η(α) axis, which is the axis of rotation (also axis of symmetry) of the flywheel. However, even in this case, unless assumptions (3) and (4) are added, the torque output τ_(u) can have a non-zero component along the gimbal axis. In fact, in this case, an additional assumption that the angular acceleration {umlaut over (α)}≃0 has to be appended to Assumption 1.4; note that {dot over (a)}<<{dot over (θ)} does not imply that {umlaut over (α)} is “negligible.” From a practical viewpoint, assumptions (1) and (2) are justifiable for most (VS)CMG designs, and under these assumptions, the expressions for the angular momentum contribution from the (VS)CMGs and its time derivative in the spacecraft body frame, are given by (62) and (63). The next section deals with singularity analysis of

(Γ) under these first two assumptions.

Singularity Analysis of Spacecraft with n VSCMGs under Assumptions (1) and (2)

Expressions for the angular momentum contribution from n VSCMGs, and the time derivative of this angular momentum, are provided here. As can be seen from these expressions, the “control influence” matrices are non-singular when either this angular momentum or its time derivative are considered as control inputs, under simple and easy-to-satisfy conditions on the gimbal axis orientations of n VSCMGs, when n≥2. This shows that with as few as two VSCMGs, one can obtain a desired output angular momentum or output torque from the VSCMGs, provided that angular rate and angular acceleration constraints on the gimbal and rotor are satisfied. Consider n VSCMGs, satisfying assumptions (1) and (2); in which case the angular momentum contribution of each VSCMG is given by (62) and the time rate of this momentum for each VSCMG is given by (63). Let J_(g1) ^(k) denote the inertia of the gimbal frame of the kth VSCMG about the gimbal axis (its symmetry axis), and let J_(r) ^(k)=diag(J_(r1) ^(k), J_(r2) ^(k), J_(r1) ^(k)) denote the inertia matrix of the axisymmetric rotor of the kth VSCMG, where k=1, . . . , n for n≥2. Then equation (62) for the momentum output of the VSCMGs in the base body coordinate frame can be generalized to

(Γ)Γ=u, where

(Γ)=[J _(g1) ¹ +J _(r1) ¹)g ₁ J _(r2) ¹η₁(α₁) . . . (J _(g1) ^(n) +J _(r1) ^(n))g _(n) J _(r2) ^(n)η_(n)(α_(n))]∈

^(3×2n), and Γ=[α₁ θ₁ . . . α_(n) θ_(n)]^(T)∈

^(2n).  (68) The following result easily follows from the structure of the influence matrix

(Γ) in the above expression. Theorem 1. For a spacecraft with two or more VSCMGs n≥2) satisfying assumptions 1.1 and 1.2 as stated earlier, the control influence matrix

(Γ) defined by (68) has full rank if g_(j) is neither parallel nor orthogonal to g_(k) for any pair of VSCMGs (j, k=1, . . . , n, j≠k). Proof. Without loss of generality, consider the case that j=1 and k=2 in the above statement. Then the control influence matrix for the VSCMG array has its first four columns given by (J _(g1) ¹ +J _(r1) ¹)g ₁ , J _(r2) ¹η₁(α₁), (J _(g2) ^(n) +J _(r2) ^(n))g ₂ and J _(r2) ²η₂(α₂).

Since g₁ and g₂ are neither parallel nor orthogonal to each other, and since η₁(α₁) is always orthogonal to g₁, the triad of vectors g₁, η₁(α₁) and g₂ are either non-coplanar or planar. When they are non-coplanar, they span

³ and hence rank (

(Γ))=3. At instants when g₁, η₁(α₁) and g₂ are co-planar, η₂(α₂) is normal to this plane since η₂(α₂) is always orthogonal to g₂. Therefore, in this case, Span (g₁, η₁(α₁), g₂, η₂(α₂))=

³ and the result follows.

The above result shows that it is possible to obtain any given angular momentum output with just a pair of VSCMGs, provided that constraints on the angular rates of the gimbal and rotor are satisfied. Now consider the time derivative of this angular momentum, which is the torque output from the VSCMGs acting on the spacecraft base body. For a single VSCMG, this torque output is given by the expression (63). For n≥2 VSCMGs, this torque output equation is given by

(Γ)γ={dot over (u)}, where

(Γ)=[(J _(g1) ¹ +J _(r1) ¹)g ₁ J _(r2) ¹η₁(α₁) J _(r2) ¹ g ₁ ^(×)η₁(α) . . . (J _(g1) ^(n) +J _(r1) ^(n))g _(n) J _(r2) ^(n)η_(n)(α_(n)) J _(r2) ^(n) g _(n) ^(×)η_(n)(α_(n))]∈

^(3×3n), and γ=[{umlaut over (α)}₁ {umlaut over (θ)}₁ {dot over (α)}₁{dot over (θ)}₁ . . . α_(n) θ_(n) {dot over (α)}_(n){dot over (θ)}_(n)]^(T)∈

^(3n).  (69) Note that the control influence matrix

(Γ)for the torque output has the column vectors of the influence matrix

(Γ) for the angular momentum output, in addition to additional columns that are the third axes of each of the VSCMG gimbal-fixed coordinate frames. This observation leads to the following result, which is a corollary of Theorem 1. Corollary 2. For a spacecraft with two or more VSCMGs satisfying assumptions 1.1 and 1.2 as given earlier, the control influence matrix C(Γ)) defined by (69) has full rank if g_(j) is neither parallel nor orthogonal to g_(k) for any pair of VSCMGs (j, k=1, n, j≠k).

Theorem 1 holds even without Assumption (1), in which case σ≠0 provides additional directions for control that lead to better controllability properties. In Section 9, attitude control of a spacecraft using VSCMGs with and without Assumption (1) is compared.

A Geometric Variational Integrator for Spacecraft with VSCMGs

The dynamics of the multibody system consisting of the spacecraft with VSCMGs can be discretized for numerical implementation, using a variational integrator that preserves the geometry of the state space and the conserved norm of the total angular momentum. The idea behind variational integrators is to discretize the variational principles of mechanics: Hamilton's principle for a conservative system or the Lagrange-d'Alembert principle for a system with nonconservative forcing. Variational integrators are known to show good energy behavior over exponentially long time intervals and maintain conserved momentum quantities during numerical integration for systems with conserved momenta. Geometric variational integrators combine variational integrators with geometric (e.g., Lie group) methods that preserve the geometry of the configuration upon discretization. In a geometric variational integrator for multibody systems, rigid body attitude is globally represented on the Lie group of rigid body rotations. General multi-purpose numerical integration methods do not necessarily preserve first integrals or the geometry of the configuration space. Many interesting dynamical systems, including rigid body and multibody systems, evolve on Lie groups or fiber bundles on Lie groups. Lie group methods in numerical integration techniques preserve this geometry of the configuration space by discretizing the dynamics directly on the Lie group. Treatment of Lie group variational integrators for discretization of rigid body dynamics is given in the literature. Since geometric variational integrators are variational by design, they conserve momentum quantities when the system exhibits symmetry, like the magnitude of the total angular momentum Π of the spacecraft with VSCMGs.

Discretization of Equations of Motion

In this section, the discrete equations of motion for a spacecraft with one VSCMG in the form of a geometric variational integrator, corresponding to the equations of motion (30) and (31) are obtained. This is followed by generalizing these discrete equations to the case when the spacecraft has multiple VSCMGs.

Discrete Lagrangian

The discrete Lagrangian function L_(d): Q×Q→

approximates the continuous Lagrangian using quadrature rules. Let h≠0 denote a fixed time step size, i.e., t_(k+1)−t_(k)=h, and consider the discrete Lagrangian

$\begin{matrix} \begin{matrix} {{{\mathcal{L}_{d} \approx {\int_{t_{k}}^{t_{k + 1}}{\mathcal{L}\;{dt}}}} = {{{\mathcal{L}\left( {\Omega_{k},R_{k},\gamma_{k},{\overset{.}{\gamma}}_{k}} \right)}h} = {\frac{h}{2}\chi_{k}^{T}{\mathcal{J}\left( \gamma_{k} \right)}\chi_{k}}}},} \\ {= {{{{\frac{h}{2}\begin{bmatrix} \Omega_{k}^{T} & {\overset{.}{\gamma}}_{k}^{T} \end{bmatrix}}\begin{bmatrix} {\Lambda\left( \gamma_{k} \right)} & {B\left( \gamma_{k} \right)} \\ {B\left( \gamma_{k} \right)}^{T} & {J_{g\; r}\left( \gamma_{k} \right)} \end{bmatrix}}\begin{bmatrix} \Omega_{k} \\ {\overset{.}{\gamma}}_{k} \end{bmatrix}}.}} \end{matrix} & (70) \end{matrix}$ For notational convenience, define Λ(γ_(k))=Λ_(k), B(γ_(k))=B_(k) and J_(gr)(γ_(k))=J_(gr,k). Discretization of Kinematics

Consider the discrete analogue of the continuous spacecraft attitude kinematics equation (9) given by, R _(k+1) =R _(k) F _(k),  (71) such that, F _(k)=exp(hΩ_(k) ^(×)).  (72) The first variation of both sides of equation (72) is obtained under the assumption that δΩ_(k) ^(×) commutes with Ω_(k) ^(×), i.e., the Lie bracket [δΩ_(k) ^(×), Ω_(k) ^(×)]=0, as follows: δF _(k) =hδΩ _(k) ^(×)exp(hΩ _(k) ^(×))=hδΩ _(k) ^(×) F _(k). The variation of F_(k) can be computed from equation (25) and (71) as δF_(k)=−Σ_(k) ^(×)F_(k)+F_(k)Σ_(k+1) ^(×), then

$\begin{matrix} \begin{matrix} {{{\delta\Omega}_{k}^{\times} = {{\frac{1}{h}\delta\; F_{k}F_{k}^{T}} = {\frac{1}{h}\left( {{{- \Sigma_{k}^{\times}}F_{k}} + {F_{k}\Sigma_{k + 1}^{\times}}} \right)F_{k}^{T}}}},} \\ {{= {\frac{1}{h}\left( {{- \Sigma_{k}^{\times}} + \left( {F_{k}\Sigma_{k + 1}} \right)^{\times}} \right)}},} \\ {{\delta\Omega}_{k} = {\frac{1}{h}{\left( {{F_{k}\Sigma_{k + 1}} - \Sigma_{k}} \right).}}} \end{matrix} & (73) \end{matrix}$ The VSCMG angular rates are approximated using the trapezoidal rule as:

$\begin{matrix} {{{\overset{.}{\gamma}}_{k} \simeq {\frac{\gamma_{k + 1} - \gamma_{k}}{h}\mspace{14mu}{and}\mspace{14mu}{its}\mspace{14mu}{variation}}},{{\delta{\overset{.}{\gamma}}_{k}} = {\frac{1}{h}{\left( {{\delta\gamma}_{k + 1} - {\delta\gamma}_{k}} \right).}}}} & (74) \end{matrix}$ Discretization of Dynamics

Consider the discrete Lagrangian (70) and the associated action sum

${S_{d} = {\sum\limits_{k = 0}^{N - 1}\mathcal{L}_{d}}},$ then the discrete Lagrange-dAlembert principle states that

$\begin{matrix} {{\sum\limits_{k = 0}^{N - 1}\left( {{\delta\;\mathcal{L}_{d}} + {h\;\tau_{d}^{T}\delta\;\gamma_{k}}} \right)} = 0.} & (75) \end{matrix}$ The first variation of the discrete Lagrangian (70) is

$\begin{matrix} \begin{matrix} {{{\delta\mathcal{L}}_{d} = {{{{h\begin{bmatrix} \Omega_{k}^{T} & {\overset{.}{\gamma}}_{k}^{T} \end{bmatrix}}\begin{bmatrix} \Lambda_{k} & B_{k} \\ B_{k}^{T} & J_{{g\; r},k} \end{bmatrix}}\begin{bmatrix} {\delta\Omega}_{k} \\ {\delta{\overset{.}{\gamma}}_{k}} \end{bmatrix}} + {\frac{\partial}{\partial\gamma_{k}}\left\{ \mathcal{L}_{d} \right\}\delta\;\gamma_{k}}}},} \\ {= {{{h\left( {{\Lambda_{k}\Omega_{k}} + {B_{k}{\overset{.}{\gamma}}_{k}}} \right)}^{T}{\delta\Omega}_{k}} + {{h\left( {{B_{k}^{T}\Omega_{k}} + {J_{{g\; r},k}{\overset{.}{\gamma}}_{k}}} \right)}^{T}\delta{\overset{.}{\gamma}}_{k}} +}} \\ {{{M_{k}\left( {\gamma_{k},{\overset{.}{\gamma}}_{k},\Omega_{k}} \right)}{\delta\gamma}_{k}},} \\ {{= {{h\;\Pi_{k}^{T}{\delta\Omega}_{k}} + {h\; p_{k}^{T}\delta{\overset{.}{\gamma}}_{k}} + {M_{k}{\delta\gamma}_{k}}}},} \end{matrix} & (76) \end{matrix}$

where the discrete total angular momentum of the spacecraft (Π_(k)) is obtained using equation (74) as Π_(k)=Λ_(k)Ω_(k) +B _(k){dot over (γ)}_(k)=Π_(b,k)+u_(k),  (77) and the internal momentum quantities are given by

${p_{k} = {{B_{k}^{T}\Omega_{k}} + {J_{{g\; r},k}{\overset{.}{\gamma}}_{k}}}},{M_{k} = \frac{\partial\mathcal{L}_{d}}{\partial\gamma_{k}}},{and}$ $u_{k} = {\frac{1}{h}{B_{k}\left( {\gamma_{k + 1} - \gamma_{k}} \right)}}$ Substituting equation (73), (74) and (76) into the Lagrange-dAlembert principle (75) gives,

$\begin{matrix} {{\sum\limits_{k = 0}^{N - 1}\left\lbrack {{\prod\limits_{k}^{T}\left( {F_{k}{\sum\limits_{k + 1}{- \sum\limits_{k}}}} \right)} + {p_{k}^{T}\left( {{\delta\;\gamma_{k + 1}} - {\delta\;\gamma_{k}}} \right)} + {M_{k}\delta\;\gamma_{k}} + {h\;\tau_{\gamma,k}^{T}\delta\;\gamma_{k}}} \right\rbrack} = 0.} & (78) \end{matrix}$ Using the fact that the variations Σ_(k) and δγ_(k) vanish at the endpoints (for k=0 and k=N) and re-indexing the discrete action sum, equation (78) can be re-expressed as

$\begin{matrix} {{\sum\limits_{k = 0}^{N - 1}\left\lbrack {\left( {{\prod\limits_{k - 1}^{T}F_{k - 1}} - \prod\limits_{k}^{T}} \right){\sum\limits_{k}{{+ \left( {p_{k - 1}^{T} - p_{k}^{T} + M_{k} + {h\;\tau_{\gamma,k}^{T}}} \right)}\delta\;\gamma_{k}}}} \right\rbrack} = 0.} & (79) \end{matrix}$ Since the above expression is true for arbitrary Σ_(k)and δγ_(k), one obtains the following relations for the discrete dynamics: Π_(k+1) =F _(k) ^(T)Π_(k),  (80) P _(k+1) =P _(k) +M _(k+1) +hτ _(γ,k+1).  (81)

This discrete dynamics of the spacecraft with one VSCMG, given by equation (80) and (81), is generalized to the case of multiple VSCMGs in a manner similar to that in section 4. The discrete analog of the spacecraft attitude dynamics with multiple VSCMGs is obtained from equations (77) and (80), as follows: Π_(b,k+1) =F _(k) ^(T)Π_(b,k) +F _(k) ^(T) u _(k) −u _(k+1).  (82) Geometric Variational Integrator Algorithm The algorithm for the geometric variational integrator (GVI) routine is as follows: 1. Initialize F_(k)=exp(hΩ_(k) ^(×)) and Γ_(k+1)=h{dot over (Γ)}_(k)+Γ_(k); 2. Compute

_(k+1) and Λ_(k+1) as functions of Γ_(k+1); 3. Equate, F_(k) ^(T)u_(k)−u_(k+1)=hτ_(cp,k)=−L_(v)Ω_(k)−L_(p)(a_(i)e_(i)×(R_(d) ^(T)R_(k)e_(i))) and substitute in equation (82); 4. Compute, u_(k+1)=F_(k) ^(T)u_(k)−hτ_(cp,k); 5. Update VSCMG rates one time step forward as: {dot over (Γ)}_(k+1)=

_(k+1) ^(†)u_(k+1)+(I_(2n×2n)−

_(k+1) ^(†)

_(k+1))N; 6. Obtain Π_(b,k+1) from dPibpl and Ω_(k+1)=Λ_(k+1) ⁻¹Π_(b,k+1); 7. Loop through steps 1 to 7 for all k. This algorithm provides an explicit geometric variational integrator, which is used in the following section to numerically simulate the dynamics of a spacecraft with multiple VSCMGs, while maintaining a constant magnitude for the total angular momentum (∥Π_(k+1)∥=∥Π_(k)∥ by equation (80)) and preserving the geometry of the configuration space. Numerical Simulation Results

In this section, the feedback control law given by equation (47) is numerically validated on the attitude dynamics of a spacecraft with three VSCMGs in a tetrahedron configuration.

Example Case of a Spacecraft with Three VSCMG in Tetrahedron Configuration

A spacecraft with three VSCMGs in a tetrahedron configuration as shown in FIGS. 2a and 2b is considered in this section. Each VSCMG has identical gimbal and rotor mass, i.e. m_(g) ¹=m_(g) ²=m_(g) ³=m_(g) and m_(r) ¹=m_(r) ²=m_(r) ³=m_(r), respectively. From FIG. 2c , the rotor axes η_(1,2,3) and gimbal axes g_(1,2,3) corresponding to VSCMG_(1,2,3), respectively are resolved in the spacecraft base body frame. The center of mass of the spacecraft base body is kept aligned to the plane containing the intersection of g and η.

For the tetrahedron mount of three single-gimbal VSCMGs with skew angle of β as illustrated in FIG. 2, the gimbal-axis vectors can be represented as,

$\begin{matrix} {{g_{1} = \begin{bmatrix} {C\;\beta} \\ 0 \\ {S\;\beta} \end{bmatrix}};{g_{2} = {{\begin{bmatrix} {{- S}\;\Theta\; C\;\beta} \\ {C\;\Theta\; C\;\beta} \\ {S\;\beta} \end{bmatrix}\mspace{14mu}{and}\mspace{14mu} g_{3}} = {\begin{bmatrix} {{- S}\;\Theta\; C\;\beta} \\ {{- C}\;\Theta\; C\;\beta} \\ {S\;\beta} \end{bmatrix}.}}}} & (83) \end{matrix}$ Similarly, the rotor axis η(0) at time t=0 can be represented as,

$\begin{matrix} {{{\eta_{1}(0)} = \begin{bmatrix} {{- S}\;\beta} \\ 0 \\ {C\;\beta} \end{bmatrix}};{{\eta_{2}(0)} = {{\begin{bmatrix} {{- S}\;\beta\; S\;\Theta} \\ {C\;\Theta\; S\;\beta} \\ {C\;\beta} \end{bmatrix}\mspace{14mu}{and}\mspace{14mu}{\eta_{3}(0)}} = {\begin{bmatrix} {S\;\beta\; S\;\Theta} \\ {C\;\Theta\; S\;\beta} \\ {C\;\beta} \end{bmatrix}.}}}} & (84) \end{matrix}$ Here, s((α/β)/Θ)≡sin((α/β)/Θ) and C((α/β)/Θ)≡cos((α/β)/Θ),

${\Theta = {{\frac{\pi}{2} - \frac{2\pi}{n}}}},$ for tetrahedron,

$n = {\left. 3\Rightarrow\Theta \right. = \frac{\pi}{6}}$ radian or 30°. The time varying η(t), as a function of time about g is obtained using equation (1) and rotation matrices R_(g) ^(i) and R_(r) ^(i) are given as, R _(g) ^(i) =[g _(i) η_(i) g _(i) ^(×)η_(i)] and R _(r) ^(i) =R _(g) ^(i)exp(θ_(i) e ₂ ^(×)); i=1,2,3.

From Corollary 2, the tetrahedron configuration of VSCMG in the spacecraft base body ensures the existence of non-singular

matrix for all time t≥0. The skew angle β is chosen, such that g_(j) is neither parallel nor orthogonal to g_(k) for all three VSCMGs (j, k=1,2,3; j≠k).

Results for a Simulated Pointing Maneuver

The geometric variational integrator scheme given above and the simulation parameters from the table shown in FIG. 7 are used to obtain numerical results for a simulated pointing maneuver. The initial attitude is chosen to be a 1 radian rotation about the inertial axis [−1/3 1/3 0.8/3]^(T). The full attitude pointing maneuver transfers the initial attitude to a desired final attitude, asymptotically. The control inputs are provided in terms of VSCMG angular rates, i.e. the vector {dot over (Γ)}. This vector of VSCMG rates is obtained using the GVI algorithm given above. The VSCMG angular momentum contribution converges to zero as the gimbals and rotors converge to their prescribed nominal rates, i.e., {dot over (Γ)} converges to {dot over (Γ)}_(n) in the null space of

; this helps in avoiding “zero crossing” of the gimbal and rotor drive motors. In the first set of simulation results shown in FIG. 3, control schemes based on Assumption (1) σ32 0) are applied when (σ=0) and when σ≠0, and the open loop simulation results are compared. For this maneuver, FIG. 3a compares the time response of the norm of spacecraft total angular velocity for these two cases, and FIG. 3b compares the control torque norms generated by the control law. The importance of this generalized VSCMG model is demonstrated by FIG. 3c ; the spacecraft actuated by VSCMG with non-zero rotor offset is not stabilized, as the gimbal and rotor are not spinning in the null space of

_(σ≠0) (note that

_(σ≠0) ≠

_(σ=0)). As (VS)CMG are mainly used for precise pointing application of the spacecraft, even a small change in the dynamics can lead to a considerable deviation in pointing accuracy. FIG. 3d shows the VSCMG angular momenta with and without rotor offset. From these results, it is inferred that a small misalignment of the rotor CoM with gimbal CoM (σ=0.005 m) can greatly affect the dynamics leading to failure in achieving the control objectives.

FIGS. 4a and 4b compare the time evolution of each VSCMG's gimbal rates for rotor offsets of σ=0 and σ=0.005 m, respectively. The difference in these gimbal rates is given in FIG. 6a . Similarly, VSCMG rotor rates with zero rotor offset (FIG. 5a ) and non-zero offset (FIG. 5b ) are plotted and the difference in the rotor rates for these two cases is plotted in FIG. 6b . These results confirm the reduction in the gimbal and rotor rates of the VSCMG with non-zero rotor offset to that of the VSCMG with zero rotor offset. Based on the numerical results, one can see that the generalized dynamics model can lead to better control performance when certain simplifying assumption(s) do not hold in practice.

The dynamics model of a spacecraft with a generalized model of one VSCMG with an offset between the rotor center of mass and gimbal center of mass along the gimbal axis is presented. The model is then generalized to a spacecraft with n such VSCMGs. Equations of motion are expressed in terms of angular momentum variables of the spacecraft's attitude motion and the rotational degrees of freedom of the VSCMGs. Thereafter, certain commonly used assumptions are applied to the generalized VSCMG model, which reduces it to the conventional model. Sufficient conditions for non-singular VSCMG steering under some of these assumptions are stated. An attitude pointing control scheme for a spacecraft using only VSCMGs is obtained and the control scheme is compared for VSCMGs with zero and non-zero rotor offset. The overall dynamics is numerically simulated, when there is no gravity or external moment, and when the overall angular momentum of the system is zero. The continuous equations of motion for this system are discretized in the form of a geometric variational integrator, for numerical simulation of the feedback system. The numerical simulation results confirm the stabilizing properties of the VSCMG-based attitude control and show improved pointing control performance when the VSCMG model takes into account an existing rotor offset. Embodiments of the VSCMGs with CoM offsets will have greater tolerance to misalignments and manufacturing imperfections leads to lesser costs and faster development times than current (VS)CMGs. They will be more durable and adaptive; i.e. they will not lead to spacecraft pointing failures due to misalignment, and can also identify and correct for misalignments that may occur in use. They are more efficient, since they require lower power consumption per unit torque produced, in comparison to traditional designs. And they can be scaled from very small sizes (such as cubesats) to very large sizes (such as the International Space Station).

Although the invention has been described in detail with particular reference to the disclosed embodiments, other embodiments can achieve the same results. Variations and modifications of the present invention will be obvious to those skilled in the art and it is intended to cover all such modifications and equivalents. The entire disclosures of all patents and publications cited above are hereby incorporated by reference. 

What is claimed is:
 1. A variable speed control moment gyroscope (VSCMG) comprising: a gimbal frame; a flywheel; and an offset between a rotational axis of said gimbal frame and a radial line passing through a center of mass of said flywheel, said offset in a direction of said flywheel's rotation axis, wherein said radial line is parallel to said rotational axis; wherein said VSCMG does not comprise a control singularity in a map between a gimbal rotation rate and/or a flywheel rotation rate and angular momentum or torque produced by said VSCMG.
 2. The VSCMG of claim 1 wherein angular momentum and torque produced by said VSCMG increases with a distance of said VSCMG from a center of mass of a spacecraft bus.
 3. The VSCMG of claim 1 wherein a gimbal coordinate frame is not the same as its principal axis frame.
 4. The VSCMG of claim 1 wherein a flywheel fixed coordinate frame is not the same as its principal axis frame.
 5. The VSCMG of claim 1 wherein a gimbal inertia is not about said rotational axis of said gimbal frame.
 6. The VSCMG of claim 1 wherein said offset is at least an order of magnitude greater than an offset between said rotational axis of said gimbal frame and said center of mass of said flywheel occurring during manufacture of said VSCMG due to manufacturing tolerances.
 7. The VSCMG of claim 6 wherein said offset is specified in a design of said VSCMG.
 8. The VSCMG of claim 1 wherein said flywheel is axisymmetric.
 9. The VSCMG of claim 1 wherein said flywheel rotates with a variable angular speed. 